#include <REGX52.H>
#include "Timer0.h"
#include "Key.h"
#include <INTRINS.H>  //函数库

unsigned char KeyNum,LEDMode; //LEDMode用于记录KeyNum的变化

void main()
{
	P2=0xFE; //给D1口一个初始值
	Timer0Init();
	while(1)
	{
		KeyNum=Key();
		if (KeyNum) //按键被按下
		{
			if(KeyNum==1)
			{
				LEDMode++;
				if(LEDMode>=2)LEDMode=0;

			}
		}
	}
}

void Timer0_Routine() interrupt 1 //中断函数
{
	static unsigned int T0count; //静态函数变量，子函数程序结束后不清零
	TL0 = 0x66;		//设置定时初值
	TH0 = 0xFC;		//设置定时初值

//	TH0=64535/256; 
//	TL0=64535%256; //中断后值会溢出则为0，则下次计时为65ms,故每次进中断需要重新赋初值
	
	T0count++;
	if(T0count>=1000) //一毫秒循环一千次即为一秒
	{
		T0count=0; //先清零
		if(LEDMode==0)
			P2=_crol_(P2,1);
		if(LEDMode==1)
			P2=_cror_(P2,1);

	}
}